package com.sihai.ehr.service;

import com.sihai.core.Limit;
import com.sihai.core.LimitedList;
import com.sihai.core.Sorter;
import com.sihai.ehr.model.biz.AdministrationEvectionReportForm;
import com.sihai.ehr.model.biz.AdministrationEvectionReportFormAuditing;
import com.sihai.ehr.model.biz.AdministrationEvectionReportFormDetail;
import com.sihai.ehr.model.sys.User;
import com.sihai.ehr.web.pojo.SearchFormPojo;

import java.util.List;

/**
 * @author wxn
 * @since 13-4-15 21:29
 *
 * 行政签核系统 - 出差报告单Service
 */
public interface AdministrationEvectionReportFormService {
    void save(AdministrationEvectionReportForm financialReportForm, List<AdministrationEvectionReportFormDetail> details)throws Exception;

    AdministrationEvectionReportForm get(Long id)throws Exception;

    boolean delete(String ids)throws Exception;

    LimitedList<AdministrationEvectionReportForm> findAdministrationEvectionReportForm(User user, SearchFormPojo searchFormPojo, Limit limit, Sorter sorter)throws Exception;

    List<List<AdministrationEvectionReportFormAuditing>> findAdministrationEvectionReportFormAuditing(Long form)throws Exception;

    void saveAdministrationEvectionReportFormAuditingProcess(Long formId)throws Exception;

    List<AdministrationEvectionReportFormDetail> findAdministrationEvectionReportFormDetails(AdministrationEvectionReportForm reportForm)throws Exception;
}
